package com.ckr.dao;

import com.ckr.pojo.Department;
import org.springframework.stereotype.Repository;

import java.util.Collection;
import java.util.HashMap;
import java.util.Map;

/**
 * @author Shadowckr
 * @create 2022-01-14 8:48
 */

/*
@Repository注解修饰哪个类，则表明这个类具有对对象进行CRUD（增删改查）的功能，
而且@Repository是@Component注解的一个派生品，所以被@Repository注解的类可以自动的被@ComponentScan通过路径扫描给找到。
这也在一定程度上解释了为什么被@Repository注解的类也能@Autowired（自动装配）。
 */
//注册到IOC容器中
@Repository
public class DepartmentDao {
    //模拟数据库中的数据
    private static Map<Integer, Department> departments = null;

    static {
        departments = new HashMap<>();//创建一个部门表
        departments.put(1, new Department(1, "技术部"));
        departments.put(2, new Department(2, "市场部"));
        departments.put(3, new Department(3, "调研部"));
        departments.put(4, new Department(4, "后勤部"));
        departments.put(5, new Department(5, "运营部"));
    }

    //获得部门的所有信息
    public Collection<Department> getDepartments() {
        return departments.values();
    }

    //通过id得到部门
    public Department getDepartmentById(int id) {
        return departments.get(id);
    }
}
